home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software Vault: The Diamond Collection
/
The Diamond Collection (Software Vault)(Digital Impact).ISO
/
cdr47
/
sch250.zip
/
ERRORS.DOC
< prev
next >
Wrap
Text File
|
1995-02-01
|
6KB
|
118 lines
Error Detection During Execution
As mentioned above, errors are trapped at run time and displayed in a
red box on the screen. Error messages are standard Clipper(r) derived
messages with hooks to the development environment that point the
Schooner editor back to the line of code that generated the error.
This allows Schooner to load the file that contains the error and
place the cursor on the line of code with the error.
Error messages generally describe the error well. However, not all
messages are easy to trace. For the most part, error messages will
define the function, the internal (not Schooner) line of offending
code and a description of the error.
The function described in the error message will most likely be the
Schooner named function, but it may be an internal function. If it is
an internal function, don't panic. The error is probably in a
Schooner command or variable declaration. Let Schooner point you to
the line of Schooner code and fix the error.
Though rare, some errors may generate a condition where Schooner
cannot point you back to the line of code. These are generally
database file errors that corrupt the file handles used by Schooner.
This does not cause damage. It simply means you have to manually load
the source code file and find the error yourself.
Even more rare are those errors which dump you back to DOS. Again,
they rarely cause damage, but you will need to restart Schooner.
Some errors that can be generated while in graphics mode cannot be
trapped by Schooner. This most often occurs if your IMGSAVE() and/or
IMGRESTORE() segment size definition is not evenly divisible into the
number of lines of the image with which you are working. See the
IMGSAVE() and IMGRESTORE() functions for more details. The best way
to recover is to try blindly typing the DOS MODE 80 command and
pressing ENTER, If this does not work then reset your PC. In all of
our development we have never lost data. It is simply troublesome.
Make liberal use of the SETEXIT() function to allow you to break out
of infinite loop conditions. In emergencies use the Alt-C command.
This will kill almost any situation and return you to DOS. Simply
restart Schooner to fix the problem.
The following are some of the more common errors:
Database Required: You attempted to access a non existent database.
Lock Required: You tried to perform a function which required the
file or record to be locked. Use the file exclusively or lock the
file or record.
Exclusive Required: Similar to above. Use the file exclusively.
Field Numeric Overflow: You tried to write a number into a database
field where the size of the number is larger than the field can
handle.
Index File Corrupted: You have a damaged index file. Reindex.
Type Mismatch: You tried to join or work on two variables that are of
a different type.
Subscript Range: You tried to use an array element that does not
exist. In rare situations this message may appear if you have
unbalanced IF..ENDIF or DO WHILE..ENDDO constructs.
Zero Divide: You tried to divide by 0.
Run Error: Occurs when a SHELL() error condition arises.
Open Errors: These can occur when an error arises during a file open
attempt. A number is included with the error that describes the DOS
error type. Refer to your DOS manual for a full description of the
error type.
Print Errors: Generally occur when the printer is off-line or out of
paper.
Undefined Identifier: You tried to use a variable that has not yet
been defined. Use the PUBLIC command to define it or assign it a
value. This can also occur when an IF or DO WHILE statement tries to
evaluate an expression with an undefined variable (EVEN WHEN THE
STATEMENT IS NESTED WITHIN A FALSE CONSTRUCT. This can occur because
all IF and DO WHILE structures are evaluated in order to maintain the
internal structure stacks).
Not an Array: You tried to use an array element that does not exist.
Missing External: Generally refers to misspellings in your code that
refer to commands or functions.
Internal Error: An ugly one. Could mean a corrupted index file.
Disk Full: Just like it sounds.
Multiple Error: Several errors have occurred at once. Another ugly
one. You will probable get dumped back to DOS.
Out of Memory: You have run out of memory. Try modifying the above
listed memory management variables to open up some more memory. In
particularly large applications, try running your code with the
SCHOONRT runtime module rather than directly from the editor. This is
a hassle, but opens up more memory.
Compiling your Application
For the most part, Schooner Version 2.50 GUI is still compiler
compatible with the Clipper Summer '87 compiler. However, maintaining
compiler compatibility was beginning to restrict our enhancements to
Schooner and was actually holding back development.
Because of this and due to low demand for the compiler kit, we are no
longer offering the compiler kit directly. However, we will be happy
to work with you and advise you on the tools and techniques necessary
to compile your Schooner applications. Please contact us at our
mailing or CompuServe address listed in the README documentation.